]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
Handle "color: inherit" directly in get_color_from_term(), not in libcroco
authorFederico Mena Quintero <federico@gnome.org>
Fri, 22 Nov 2019 00:30:03 +0000 (18:30 -0600)
committerFlorian Müllner <florian.muellner@gmail.com>
Fri, 29 Nov 2019 17:50:03 +0000 (17:50 +0000)
The idea is to move handling of "inherit" as early in the parsing as possible.

Part of https://gitlab.gnome.org/GNOME/gnome-shell/issues/1934

src/st/st-theme-node.c

index bd2f21f83b48a4a757432ec2ce3331afb48c54e3..bb630d9d3c70b2a018b95fcc02771622dc28cefa 100644 (file)
@@ -581,10 +581,14 @@ get_color_from_term (StThemeNode  *node,
   CRRgb rgb;
   enum CRStatus status;
 
+  if (term_is_inherit (term))
+    {
+      return VALUE_INHERIT;
+    }
   /* Since libcroco doesn't know about rgba colors, it can't handle
    * the transparent keyword
    */
-  if (term_is_transparent (term))
+  else if (term_is_transparent (term))
     {
       *color = TRANSPARENT_COLOR;
       return VALUE_FOUND;
@@ -606,9 +610,6 @@ get_color_from_term (StThemeNode  *node,
   if (status != CR_OK)
     return VALUE_NOT_FOUND;
 
-  if (rgb.inherit)
-    return VALUE_INHERIT;
-
   if (rgb.is_percentage)
     cr_rgb_compute_from_percentage (&rgb);